package com.chnbst.bstyun.service;

import java.util.List;
import java.util.Map;

import com.chnbst.bstyun.model.pojo.Deal;
import com.chnbst.bstyun.model.vo.DealVo;

/**
 * @author WangXinLei
 * @date 2014年9月22日 下午17:55  
 */
public interface DealService {

	/**
	 * 新增交易记录
	 * @param deal 交易
	 * @return 成功返回true，否则返回false
	 */
	boolean insertDeal(Deal deal);

	/**
	 * 根据用户ID ，时间段，交易状态  来查询deal集合
	 * @param deal 
	 * @return 返回list集合
	 */
	List<Deal> selectDealsByCondition(Map<String, Object> map);
	
	/**
	 * 根据订单ID来查询deal对象
	 * @param dealId 
	 * @return 返回deal对象
	 */
	Deal selectDealByDealId(Integer dealId);
	
	/**
	 * 根据订单编号来查询deal对象
	 * @param dealNum 
	 * @return 返回deal对象
	 */
	Deal selectDealByDealNum(String dealNum);
	
	/**
	 * 查询dealList集合
	 * @param deal 
	 * @return 返回list集合
	 */
	List<DealVo> selectDealList(Map<String, Object> map);

	/**
	 * 根据用户ID 查询交易记录的总数
	 * @param userId
	 * @return
	 */
	int selectDealCountByUserId(Integer userId);
}
